=========================================================================
ISTRUZIONI e SPECIFICHE per il PRIMO ASSEGNAMENTO INFORMATICA anno 2015
========================================================================

Il primo assegnamento prevede l'implementazione di un semplice 
visulizzatore per la macchina di Galton.

------------------------------------------------
Estrarre il materiale dal KIT dell'assignment
------------------------------------------------
Creare una directory temporanea, copiare infokit_a1.tar  
nella directory e spostarsi nella directory appena creata. Es.

$$ mkdir Assegnamento1
$$ mv kit_a1.tar Assegnamento1
$$ cd Assegnamento1

S-tarare i file del primo kit con

$$ tar xvf kit_a1.tar

questo comando crea nella directory corrente una directory "GALTON" con i seguenti file

$$ ls GALTON
galton.pdf		: file contenente le specifiche dell'esercizio 
                          da svolgere


Makefile
			: Makefile per il test e 
                        la consegna dell'assegnamento (NON MODIFICARE)

README			: questo file



========================================================================
ISTRUZIONI per la realizzazione dell'assegnamento
========================================================================

Il primo assegnamento prevede la realizzazione della funzione galton(n), 
la funzione deve essere realizzata all'interno di un file chiamato "galton.c".

Nell'implementazione e' possibile utilizzare altre funzioni 
sempre da definire all'interno dello stesso file.

La funzione galton(n) va prima testata con un main() sviluppato appositamente 
per localizzare errori ed anomalie.

Solo quando siamo ragionevolmente convinti della correttezza del
codice si puo' passare al testing automatico del codice con makefile
fornito dai docenti. 

------------------
Come procedere :
-----------------

1) leggere attentamente il file .pdf

2) implementare la/le funzione/i richieste in galton.c ed effettuare testing
   preliminare utilizzando un main sviluppato allo scopo

3) testare il software con il test fornito dai
  docenti. 

       bash:~$ make test

  NOTA: (1) galton.c deve trovarsi nella directory GALTON
  (2) E' importante che il test fornito dai docenti venga effettuato solo su
  un programma gia' funzionante e testato altrimenti i risultati
  possono essere di difficile interpretazione, fuorvianti o inutili.

4) preparare la documentazione: ovvero commentare adeguatamente il/i file che
   contengono la soluzione  ed inserire una intestazione contenente il nome
   dello sviluppatore ed una dichiarazione di originalita' 

   /** \file pippo.c
       \author Nino Bixio
     Si dichiara che il contenuto di questo file e' in ogni sua parte opera
     originale dell' autore.  */

  
5) creare il tar file per la consegna

      bash:~$ make consegna

   questo esegue i test e se tutto e' andato bene
   crea un file tar che deve essere inviato
   all'indirizzo susanna.pelagatti@unipi.it

   "info15: consegna primo assegnamento (Corso A)" oppure
   "info15: consegna primo assegnamento (Corso B)"

   Tutte le consegne verranno confermate con un messaggio entro 2/3
   giorni all'indirizzo da cui e' stata effettuata la consegna. In
   caso questo non si verifichi contattare il docente.
   

---------------------------------------
 NOTE IMPORTANTI: LEGGERE ATTENTAMENTE
---------------------------------------

1) tutti gli elaborati verranno confrontati fra di loro con tool automatici
   per stabilire eventali situazioni di PLAGIO. Se gli elaborato sono 
   ragionevolmente simili verranno scartati.

2) Chi in sede di orale risulta palesemente non essere l'autore del software
   consegnato in uno degli assegnamenti dovra' ripetere l'esame

3) Tutti i comportamenti scorretti ai punti 2 e 3 verranno segnalati
   ufficialmente al presidente del corso di laurea

----------------------------
 VALUTAZIONE DELL'ASSEGNAMENTO:
----------------------------

Gli studenti che consegnano una versione funzionante e ragionevolmente
corretta dell'assegnamento entro la data di scadenza accumulano un bonus di 2
punti che verra' sommato al voto finale (vedi lucidi lezioni ed
esercitazioni).

La qualita' del codice consegnato e le eventuali parti opzionali 
fornite per i 3 assegnamenti sara' valutata complessivamente da 0 a 30 
e costituira' il voto di partenza in sede di esame.


